package com.tanhua.server.exception;

import com.tanhua.domain.vo.ErrorResult;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;

/**
 * 统一异常处理
 *  1、类上配置@ControllerAdvice
 *  2、配置一个方法
 *      参数：当前捕获的异常对象
 *      返回值：和controller中返回值一致
 *  3、方法上配置两个注解
 *      @ExceptionHandler：指定此方法可以处理的异常类型
 *      @ResponseBody
 */
@ControllerAdvice
public class ExceptionAdvice {

    @ExceptionHandler(value=Exception.class)
    @ResponseBody
    public ResponseEntity handlerException(Exception e) {
        e.printStackTrace();
        return ResponseEntity.status(500).body(ErrorResult.error());
    }
}
